func void Set_UnitVisual(var C_Npc slf, var int arm) {
	slf.voice = Hlp_Random(14)+1;
	
	var int i_headMesh; var string s_headMesh;
	i_headMesh = Hlp_Random(6);
	
	var int faceTex; facetex = Hlp_Random(95)+42;
	if(i_headMesh > 2) { // Mit Zopf
		// Glatzen entfernen!
		if(faceTex==45||faceTex==46||faceTex==47||faceTex==108||faceTex==110||faceTex==114||faceTex==115||faceTex==122
		|| faceTex==125||faceTex==129||faceTex==135||faceTex==136) {
		   i_headMesh = Hlp_Random(3);
		};
	};

	if(i_headMesh == 0)
	{ s_headMesh = "Hum_Head_Bald"; }
	else if(i_headMesh == 1)
	{ s_headMesh = "Hum_Head_FatBald"; }
	else if(i_headMesh == 2)
	{ s_headMesh = "Hum_Head_Psionic"; }
	else if(i_headMesh == 3)
	{ s_headMesh = "Hum_Head_Pony"; }
	else if(i_headMesh == 4)
	{ s_headMesh = "Hum_Head_Thief"; }
	else if(i_headMesh == 5)
	{ s_headMesh = "Hum_Head_Fighter"; };
	
	var int skin;
	
	if (slf.attribute[ATR_STRENGTH] < 100) {
		Mdl_SetModelScale		(slf, 0.9, 1, 1); 
	};
	if (slf.attribute[ATR_STRENGTH] > 200) {
		Mdl_SetModelScale		(slf, 1.1, 1, 1);
	};
	
	if(faceTex < 58)
	{ skin = 0; }
	else if(faceTex < 120)
	{ skin = 1; }
	else if(faceTex < 129)
	{ skin = 2; }
	else
	{ skin = 3; };
	
	Mdl_SetVisual (slf,"HUMANS.MDS");
	Mdl_SetVisualBody (slf,	"hum_body_Naked0", skin, 0, s_headMesh, faceTex, 0, arm);
};